package editorsvg.editor.comandos;

import editorsvg.editor.documento.ConjuntoElementos;
import java.awt.geom.AffineTransform;
import java.awt.geom.NoninvertibleTransformException;

/**
 *
 * @author Jorge Berjano
 */
public class ComandoTransformar implements Comando {
    private ConjuntoElementos elementos;
    private AffineTransform transformacion;
    
    public ComandoTransformar(ConjuntoElementos elementos, AffineTransform transformacion) {
            this.elementos = elementos;
            this.transformacion = transformacion;
    }

    @Override
    public void hacer() {
        elementos.transformar(transformacion);
    }

    @Override
    public void deshacer() {
        
        AffineTransform invertida;
        try {
            invertida = transformacion.createInverse();
            elementos.transformar(invertida);
            
        } catch (NoninvertibleTransformException ex) {            
        }
    }
}
